Generally, a semiconductor test apparatus (LSI tester) that tests a semiconductor device detects or determines a pass/failure of a device under test by inputting a predetermined test pattern signal to the device under test (DUT) as a testing target, and comparing output data output from the device under test with a predetermined expectation value pattern signal to determine coincidence/non-coincidence thereof.
Referring to FIG. 8, a semiconductor test apparatus of this type will be described. FIG. 8 is a block diagram showing a schematic configuration of a conventional general semiconductor test apparatus (LSI tester).
As shown, a conventional LSI tester 110 comprises a level comparator 111 for comparing output data of a device under test (DUT) 101 with a comparison voltage in level, a pattern comparator 112 for comparing the output data of the DUT 101 with a predetermined expectation value, and a flip-flop 121 for inputting the output data of the DUT 101 to the pattern comparator 112 by predetermined timing.
In the conventional LSI tester 110 thus configured, a predetermined test pattern signal is input from a pattern generator (not shown) to the DUT 101, and a predetermined signal is output as output data from the DUT 101. The output data output from the DUT 101 is input to the level comparator 111.
The output data that has been input to the level comparator 111 is compared with the comparison voltage in level, and output to the flip-flop 121.
The flip-flop 121 holds a signal from the level comparator 111 as input data, and outputs output data by predetermined timing using a strobe from a timing generator (not shown) as a clock signal.
The output data output from the flip-flop 121 is input to the pattern comparator 112, and compared with predetermined expectation value data output from the pattern generator in the tester, and a result of the comparison is output.
Then, based on the result of the comparison, coincidence/non-coincidence between the output data and the expectation value is detected, and a pass/failure (Pass/Fail) of the DUT 101 is determined.
Thus, in the conventional LSI tester, the output data output from the device under test is fetched at timing of a strobe output at timing predetermined in the tester, and the output timing of the strobe is fixed. However, the output data of the device under test has jitters (irregular fluctuation of timing). In consequence, a value of the output data obtained by the fixed timing of the strobe is not constant even in the case of the same data, causing a problem of impossibility of obtaining an accurate testing result.
Referring to FIGS. 9(a) and 9(b), such a fluctuation in obtained data caused by jitters will be described.
As shown in FIG. 9(a), output data of the device under test has jitters in a width of a certain range, and a changing point (rising edge or falling edge) of the output data is shifted by an amount equivalent to this range of jitters. Thus, when output data having such jitters is fetched by a fixed strobe, as shown in FIG. 9(b), for example, obtained data becomes “H” in the case of “OUTPUT DATA 1” (FIG. 9(a)), while obtained data becomes “L” in the case of “OUTPUT DATA 2” (FIG. 9(b)).
Thus, in the conventional test apparatus for obtaining the output data by the fixed strobe, a fluctuation occurs in data which must basically be identical because of an influence of the jitters, causing a difficulty of accurate testing and determination.
An influence of such jitters has especially been conspicuous in a high-speed semiconductor device, e.g., a DDR type semiconductor device or the like.
The double data rate (DDR) is a system for transferring data at timing of both rising and falling edges of each clock signal. As compared with a single data rate (SDR) system for transferring data only by a rising edge (or falling edge) of a clock, the DDR system can transfer data twice as much at the same clock cycle, but it is easily affected by the aforementioned jitters. Thus, accurate testing tends to be difficult.
Furthermore, in the conventional test apparatus by the fixed strobe, there has occurred a problem of impossibility of accurately testing the device under test which itself outputs a clock. Recently, a device capable of higher-speed processing has been developed which uses “RapidIO” (registered trademark), “HyperTransport” (registered trademark) or the like noticed as a next-generation I/O interface for achieving a higher speed of data transfer of a semiconductor device (e.g., IBM's CPU for next “PowerPC” (registered trademark) or the like). Such a device employs a configuration in which the device itself outputs a clock signal, and output data from the device must be fetched at edge timing of a clock output from the device itself. In the case of the DDR type device, output data must be fetched at timing of both rising and falling edges of the clock output from the device. In consequence, in the conventional test apparatus that obtains the output data by the fixed strobe, since the output data is fetched at timing unrelated to the clock output from the device, it has been difficult to accurately test the device of this type.
The present invention has been proposed to solve the aforementioned problems inherent in the conventional art, and it is an object of the invention to provide a semiconductor test apparatus which comprises a source synchronous circuit capable of obtaining clocks and output data output from a device under test as time-sequential level data and fetching the output data of the device under test at timing of a rising edge, a falling edge or both rising and falling edges of a clock signal output from the device under test, and which is accordingly capable of fetching the output data at a signal changing point synchronized with jitters of the device, thereby obtaining an accurate testing result irrespective of jitters, and especially suitable for testing a DDR type device from which data is output at both rising and falling edges of a clock as data rates.